package com.geek.video.utils;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

import com.github.pagehelper.PageInfo;

/**
 * 分页结果进行封装工具
 *
 * @author qinxh
 */
public class ResponseUtil {
    /**
     * 用PageInfo对结果进行包装，获取分页列表的总数和总页数
     *
     * @param list 分页结果
     * @return Map<String, Object>
     */
    public static <T> Map<String, Object> getListInformation(List<T> list) {

        PageInfo page = new PageInfo<>(list);
        /** TIPS:封装数据map视前端分页所需数据而定*/
        Map<String, Object> map = new HashMap<>(7);

        /** 数据*/
        map.put("data", page.getList());
        /** 当前页码*/
        map.put("currentPage", page.getPageNum());
        /** 当前分页大小*/
        map.put("currentPageSize", page.getPageSize());
        /** 下页码*/
        map.put("nextPage", page.getNextPage());
        /** 上页码*/
        map.put("prePage", page.getPrePage());
        /** 数据总量*/
        map.put("total", page.getTotal());
        /** 总页码*/
        map.put("pages", page.getPages());

        return map;
    }
}
